package com.javaee.xiangyang.service;

import com.javaee.xiangyang.common.ServiceResultEnum;
import com.javaee.xiangyang.dto.UserComment;
import com.javaee.xiangyang.entity.Comment;
import com.javaee.xiangyang.entity.Goods;
import com.javaee.xiangyang.entity.User;

import java.util.List;


public interface CommentService {

    /**
     * 新增评论
     */
    ServiceResultEnum addComment(Comment comment);

    /**
     * 查看所有评论
     */
    List<Comment> findAllComment();

    /**
     * 用户在手机上查看自己所有的评论
     * 此处需要新的封装类  封装DTO
     */
    List<UserComment> findAllCommentByUserAccount(User user);

    /**
     * 管理员封禁或解封当前评论
     */
    ServiceResultEnum updateStateByCommentId(Comment comment);

    /**
     * 用户删除自己的评论
     */
    ServiceResultEnum deleteCommentByCommentId(Comment comment);

    /**
     * 管理员查看某一位用户的评论
     */
    List<Comment> findAllCommentByUser(User user);

    /**
     * 管理员查看某商品评论
     */
    List<Comment> findAllCommentByGoods(Goods goods);

}
